因為微軟提供的DialoGPT只支援英文,若你用中文跟它聊天,它會不了解語義,會胡亂輸出。
為了能用中文跟DialoGPT對談,我們可以使用Huggingface上其他人開源的模型,
比如chat-DialoGPT-small-zh
那我們就可以將昨天程式碼的model_name
改成上面的中文DialoGPT,如下:
model_name = "liam168/chat-DialoGPT-small-zh" # 別人微調的中文DialoGPT
tokenizer = AutoTokenizer.from_pretrained(model_name) # 載入tokenizer
model = AutoModelForCausalLM.from_pretrained(model_name) # 載入模型
就可以用中文跟Chatbot聊天啦!
經過前面幾天對DialoGPT和Chit-chat的舉例,我們可以知道Chit-chat就是什麼都可以聊,
沒有特定的話題,跟Chatbot講一段話,它就回覆你,且它只在乎它講的話有沒有連貫(Coherent)
以上圖為例,若你說個"Apple.",結果AI卻回"we have a promotion on tablets.",感覺文不對題...
這就代表對話沒有連貫,連貫性(Coherence)對Chatbot是一個重要的指標。
這種對話模式就稱Chit-chat Dialogue,或稱Open-domain Dialogue,開放領域的對話。
也就是沒有特定話題(領域)的對話。
那這樣大家會不會有一個問題:
不能讓Chatbot只聊特定的話題嗎? 比如說食物或安慰我的情緒? 甚至惹怒我?
接下來,也就是明天,我就來介紹能引導話題的Chatbot!!!
Reference.
Evaluating LLM Chatbot Conversations with Athina AI